@scream
2年前 提问
1个回答

API网关特性有哪些

X0_0X
2年前

API网关特性有以下这些:

  • 大规模且高性能:API网关采用分布式部署,自动扩展,能够承载大规模的API访问;同时还能保证较低的延时,为后端服务提供高保障高效率的网关功能。API网关在程序设计上采用异步非阻塞模型,从而能够实现高并发,减少内存使用,充分利用计算机资源。另外,API网关利用Redis和内存缓存来实现二级缓存,从而极大地减少数据库的访问频率,同时避免了API网关频繁更新数据而产生的性能损耗。

  • 插件化和可配置:API网关中的处理单元过滤器以插件的方式集成到API网关中,从而可以在无须更改原程序的前提下,提供新功能。如果插件的设计良好,API网关还可以通过配置更改插件的行为。另外,API网关中的处理流程也是可以通过配置来进行变更的,例如是否启用某个过滤器,以及过滤器的执行顺序。

  • 支持API多环境:API网关中,可以设定多个环境,包括默认存在的正式环境Release以及用户自定义的环境,例如测试环境Stage和开发环境Develop。API在不同环境下可以有不同的配置,从而为服务方提供了灵活的部署流程,例如服务方可以在开发环境下进行开发、在测试环境下进行测试,在一切就绪后,将API上线到正式环境,为用户提供服务。

  • 支持MOCK:API网关对API的调用还支持MOCK(模拟调用),API网关接收到启用了MOCK的调用后,不会将其转发到服务方,而是根据服务方的配置,直接返回预先设置好的响应,从而便于服务方进行开发和测试,例如前后端分离应用中,前端对后端的调用进行MOCK。

  • 支持负载均衡:负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。负载均衡(Load Balance)其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。